Generally described, computing devices utilize a communication network, or a series of communication networks, to exchange data. Companies and organizations operate computer networks that interconnect a number of computing devices to support operations or provide services to third parties. The computing systems can be located in a single geographic location or located in multiple, distinct geographic locations (e.g., interconnected via private or public communication networks). Specifically, data centers or data processing centers, herein generally referred to as a “data center,” may include a number of interconnected computing systems to provide computing resources to users of the data center. The data centers may be private data centers operated on behalf of an organization or public data centers operated on behalf, or for the benefit of, the general public.
To facilitate increased utilization of data center resources, virtualization technologies may allow a single physical computing device to host one or more instances of virtual machine instances that appear and operate as independent computing devices to users of a data center. With virtualization, the single physical computing device can create, maintain, delete, or otherwise manage virtual machine instances in a dynamic matter. In turn, users can request computer resources from a data center, including single computing devices or a configuration of networked computing devices, and be provided with varying numbers of virtual machine resources.
In some instances, migration of a virtual machine instances may be desirable, such that the virtual machine is relocated from a first physical computing device to a second computing device. In many instances, the length of time which a migration requires is related to the amount of resources that the virtual machine instance is utilizing at the time of migration. Additionally, migration of a virtual machine may result in some amount of downtime of the virtual machine instance, denying a user to access a virtual machine during that downtime. In many instances, the amount of downtime required for a migration grows larger as the required migration time of a virtual machine instance grows.